/**
 * @param {string[]} words
 * @return {number}
 */
export var uniqueMorseRepresentations = function (words) {
  const cate = []
  for (let i = 0; i < words.length; i++) {
    const morse = toMorse(words[i])
    if (!cate.includes(morse)) {
      cate.push(morse)
    }
  }
  return cate.length
}

function toMorse(str) {
  const morseList = [
    '.-',
    '-...',
    '-.-.',
    '-..',
    '.',
    '..-.',
    '--.',
    '....',
    '..',
    '.---',
    '-.-',
    '.-..',
    '--',
    '-.',
    '---',
    '.--.',
    '--.-',
    '.-.',
    '...',
    '-',
    '..-',
    '...-',
    '.--',
    '-..-',
    '-.--',
    '--..',
  ]
  let res = ''
  for (let i = 0; i < str.length; i++) {
    res += morseList[str.charCodeAt(i) - 97]
  }
  return res
}
